﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;

namespace Teenusekiht
{
    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "Service1" in code, svc and config file together.
    public class Service1 : IService1
    {
        public string GetData(int value)
        {
            return string.Format("You entered: {0}", value);
        }

        TeenuseKlass klass = new TeenuseKlass();

        public bool LisaKohvik(string nimi, string piltAsukoht, string kirjeldus, string omanik, string rakenduseNimi)
        {
            return klass.LisaKohvik(nimi, piltAsukoht, kirjeldus, omanik, rakenduseNimi);
        }

        public bool MuudaKohvikuKirjeldus(int kohvikId, string kirjeldus, String rakenduseNimi)
        {
            return klass.MuudaKohvikuKirjeldus(kohvikId, kirjeldus, rakenduseNimi);
        }

        public string MuudaVoiLisaSoodustust(SoodustusType uuenenudAndmed, String rakenduseNimi)
        {

            return klass.MuudaVoiLisaSoodustust(uuenenudAndmed, rakenduseNimi);
        }


        public bool TagastabMenuuMuutujad(int menyy_ID, int? kasutaja_ID, String rakenduseNimi)
        {
            return klass.TagastabMenuuMuutujad(menyy_ID, kasutaja_ID, rakenduseNimi);
        }

        public int KohvikuteArv(String rakenduseNimi)
        {
            return klass.KohvikuteArv(rakenduseNimi);
        }

        public int? LisaArtikkelMenuuse(int item_ID, int menyy_ID, String rakenduseNimi)
        {
            return klass.LisaArtikkelMenuuse(item_ID, menyy_ID, rakenduseNimi);
        }

        public bool KustutaSaidiKasutaja(int site_kasutaja_ID, String rakenduseNimi) {
            return klass.KustutaSaidiKasutaja(site_kasutaja_ID, rakenduseNimi);
        }

        public bool KustutaMenuuJaKohvikuSeos(int kovhik_ID, int menyy_ID, String rakenduseNimi)
        {
            return klass.KustutaMenuuJaKohvikuSeos(kovhik_ID, menyy_ID, rakenduseNimi);
        }

        public int? LisaKohvikuleMenuu(int kovhik_ID, int menyy_ID, String rakenduseNimi)
        {
            return klass.LisaKohvikuleMenuu(kovhik_ID, menyy_ID, rakenduseNimi);
        }

        public int? LisaUusMenuu(int? kovhik_ID, string menyyNimi, String rakenduseNimi)
        {
            return klass.LisaUusMenuu(kovhik_ID,menyyNimi, rakenduseNimi);
        }

        public int[] AnnaMenyydMidaPoleKohvikul(int kohvikID, String rakenduseNimi)
        {
            return klass.AnnaMenyydMidaPoleKohvikul(kohvikID, rakenduseNimi);
        }

        public bool MuudaKohvikuMenyyTodayOlek(int kohvikID, int menuID, String rakenduseNimi)
        {
            return klass.MuudaKohvikuMenyyTodayOlek(kohvikID, menuID, rakenduseNimi);
        }

        public KohvikuKasutajaRoll[] KasutajaKohvikuRollid(int kohviku_kasutaja_ID, String rakenduseNimi)
        {
            return klass.KasutajaKohvikuRollid(kohviku_kasutaja_ID, rakenduseNimi);
        }

        public SiteKasutaja[] KoikLubatudSaidiKasutajaTyybid(String rakenduseNimi)
        {
            return klass.KoikLubatudSaidiKasutajaTyybid(rakenduseNimi);
        }

        public KohvikuKasutajaRoll[] KoikLubatudKohvikuRollid(String rakenduseNimi)
        {
            return klass.KoikLubatudKohvikuRollid(rakenduseNimi);
        }

        public int[] AnnaKoikOmanikuKohvikud(int Omaniku_ID, String rakenduseNimi) 
        {
            return klass.AnnaKoikOmanikuKohvikud(Omaniku_ID, rakenduseNimi);
        }

        public SiteKasutaja[] AnnaKoikKohvikuKasutajad(int kohviku_ID, String rakenduseNimi) 
        {
            return klass.AnnaKoikKohvikuKasutajad(kohviku_ID, rakenduseNimi);
        }

        public SiteKasutaja[] AnnaKoikSaidiKasutajad(String rakenduseNimi) 
        {
            return klass.AnnaKoikSaidiKasutajad(rakenduseNimi);
        }

        public string SaidiKasutajaLiik(int site_kasutaja_ID, String rakenduseNimi) 
        {
            return klass.SaidiKasutajaLiik(site_kasutaja_ID, rakenduseNimi);
        }

        public string[] KohvikuteNimed(String rakenduseNimi)
        {
            return klass.KohvikuteNimed(rakenduseNimi);
        }

        public string KohvikuNimiIdJargi(int kohvikID, String rakenduseNimi)
        {
            return klass.KohvikuNimiIdJargi(kohvikID, rakenduseNimi);
        }

        public int? SaidiKasutajaLiikID(int site_kasutaja_ID, String rakenduseNimi) 
        {
            return klass.SaidiKasutajaLiikID(site_kasutaja_ID, rakenduseNimi);
        }

        public bool MuudaKohvikuKasutajaRoll(int site_kasutaja_ID, int kohviku_ID, int rollID, String rakenduseNimi) 
        {
            return klass.MuudaKohvikuKasutajaRoll(site_kasutaja_ID, kohviku_ID, rollID, rakenduseNimi);
        }

        public bool MuudaSaidiKasutajaLiik(int site_kasutaja_ID, int liik, String rakenduseNimi)
        {
            return klass.MuudaSaidiKasutajaLiik(site_kasutaja_ID, liik, rakenduseNimi);
        }

        public int? KohvikuKasutajaLiikID(int kohviku_kasutaja_ID, int kohviku_ID, String rakenduseNimi)
        {
            return klass.KohvikuKasutajaLiikID(kohviku_kasutaja_ID,kohviku_ID, rakenduseNimi);
        }

        public List<KohvikType> Kohvikud(String rakenduseNimi)
        {
            return klass.Kohvikud(rakenduseNimi);
        }

        public bool KustutaMenuuArtikkel(int[] menyyItemID, String rakenduseNimi)
        {
            return klass.KustutaMenuuArtikkel(menyyItemID, rakenduseNimi);
        }

        public SoodustusType[] AnnaSoodustused(int[] myygiArtiklid, String rakenduseNimi)
        {
            return klass.AnnaSoodustused(myygiArtiklid, rakenduseNimi);
        }

        public SoodustusType[] AnnaKohvikuSoodustused(int kohvikuID, String rakenduseNimi)
        {
            return klass.AnnaKohvikuSoodustused(kohvikuID, rakenduseNimi);
        }

        public MenyyItem[] TagastaMenuuArtiklid(int meny_ID, String rakenduseNimi) 
        {
            return klass.TagastaMenuuArtiklid(meny_ID, rakenduseNimi);
        }

        public string MenuuNimetus(int menuID, String rakenduseNimi)
        {
            return klass.MenuuNimetus(menuID, rakenduseNimi);
        }

        public List<MyygiartikkelType> AnnaMuugiartiklidMidaMenuusPole(int[] olemasMyygiArtikliIDs, String rakenduseNimi)
        {
            return klass.AnnaMuugiartiklidMidaMenuusPole(olemasMyygiArtikliIDs, rakenduseNimi);
        }

        public string[] AnnaMenuuNimed(String rakenduseNimi)
        {
            return klass.AnnaMenuuNimed(rakenduseNimi);
        }

        public bool LisaMenuuArtikkelMenuuse(MenyyItem menyyItem, int? menyy_id, String rakenduseNimi)
        {
            return klass.LisaMenuuArtikkelMenuuse(menyyItem, menyy_id, rakenduseNimi);
        }

        public string VahetaMenuuArtiklit(MenyyItem menyyItem, String rakenduseNimi)
        {
            return klass.VahetaMenuuArtiklit(menyyItem, rakenduseNimi);
        }

        public int[] MenuuKohvikuIdJargi(int kohviku_ID, bool isToday, String rakenduseNimi)
        {
            return klass.MenuuKohvikuIdJargi(kohviku_ID, isToday, rakenduseNimi);
        }

        public List<KaupType> AnnaKaubad(String rakenduseNimi)
        {
            return klass.AnnaKaubad(rakenduseNimi);
        }

        public int? LisaKaup(string nimetus, String rakenduseNimi)
        {
            return klass.LisaKaup(nimetus, rakenduseNimi);
        }

        public int? AuthendiKasutaja(string uNa, string uPa, String rakenduseNimi)
        {
            return klass.AuthendiKasutaja(uNa, uPa, rakenduseNimi);
        }

        public string AnnaKasutajaIdJargi(int id, String rakenduseNimi)
        {
            return klass.AnnaKasutajaIdJargi(id, rakenduseNimi);
        }

        public string AnnaKasutajaMeiliAadress(string userName, String rakenduseNimi)
        {
            return klass.AnnaKasutajaMeiliAadress(userName, rakenduseNimi);
        }

        public string RegistreeriKasutaja(string userName, string pass, int liikID, String rakenduseNimi)
        {
            return klass.RegistreeriKasutaja(userName, pass, liikID, rakenduseNimi);
        }

        // ----------------------
        // KOMMENTAARIDE MEETODID
        // ----------------------
        public int KohvikuKommentaarideArv(int kId, String rakenduseNimi)
        {
            return klass.KohvikuKommentaarideArv(kId, rakenduseNimi);
        }

        public GenCom[] AnnaKohvikuKommentaarid(int kId, int rowC, int page, String rakenduseNimi)
        {
            return klass.AnnaKohvikuKommentaarid(kId, rowC, page, rakenduseNimi);
        }

        public KohvikType AnnaKohvik(int kohvikID, String rakenduseNimi)
        {
            return klass.AnnaKohvik(kohvikID, rakenduseNimi);
        }

        public RatCom[] AnnaKohvikuKommentaarideHinded(String rakenduseNimi)
        {
            return klass.AnnaKohvikuKommentaarideHinded(rakenduseNimi);
        }

        public GenCom LisaKohvikuKommentaar(EdiCom com, String rakenduseNimi)
        {
            return klass.LisaKohvikuKommentaar(com, rakenduseNimi);
        }

        public GenCom MuudaKohvikuKommentaar(EdiCom com, String rakenduseNimi)
        {
            return klass.MuudaKohvikuKommentaar(com, rakenduseNimi);
        }

        public bool MuudaKohvikuKommentaariOlek(StaCom com, String rakenduseNimi)
        {
            return klass.MuudaKohvikuKommentaariOlek(com, rakenduseNimi);
        }

        public bool MuudaKohvikuKommentaariPeidetus(StaCom com, String rakenduseNimi)
        {
            return klass.MuudaKohvikuKommentaariPeidetus(com, rakenduseNimi);
        }
        // ----------------------
        // KOMMENTAARIDE MEETODID
        // ----------------------

        public Dictionary<string, long> StatistikaRakendusteKohtaTana(String rakenduseNimi)
        {
            return klass.StatistikaRakendusteKohtaTana(rakenduseNimi);
        }

        public Dictionary<string, long> StatistikaRakendusteKohtaViimaneNadal(String rakenduseNimi)
        {
            return klass.StatistikaRakendusteKohtaViimaneNadal(rakenduseNimi);
        }

        public Dictionary<string, long> StatistikaRakendusteKohtaSellelKuul(String rakenduseNimi)
        {
            return klass.StatistikaRakendusteKohtaSellelKuul(rakenduseNimi); 
        }

        public Dictionary<string, long> StatistikaRakendusteKohtaKokku(String rakenduseNimi)
        {
            return klass.StatistikaRakendusteKohtaKokku(rakenduseNimi);
        }

        public Dictionary<string, long> StatistikaMeetoditeKohtaTana(String rakenduseNimi)
        {
            return klass.StatistikaMeetoditeKohtaTana(rakenduseNimi);
        }

        public Dictionary<string, long> StatistikaMeetoditeKohtaViimaneNadal(String rakenduseNimi)
        {
            return klass.StatistikaMeetoditeKohtaViimaneNadal(rakenduseNimi);
        }

        public Dictionary<string, long> StatistikaMeetoditeKohtaSellelKuul(String rakenduseNimi)
        {
            return klass.StatistikaMeetoditeKohtaSellelKuul(rakenduseNimi);
        }

        public Dictionary<string, long> StatistikaMeetoditeKohtaKokku(String rakenduseNimi)
        {
            return klass.StatistikaMeetoditeKohtaKokku(rakenduseNimi);
        }

        public string[] KohvikuLahtiolekuAeg(int kohvikuID, string p2ev, string rakenduseNimi)
        {
            return klass.KohvikuLahtiolekuAeg(kohvikuID, p2ev, rakenduseNimi);
        }

        public AadressType AnnaKohvikuAadress(int kohvikuID, string rakenduseNimi)
        {
            return klass.AnnaKohvikuAadress(kohvikuID, rakenduseNimi);
        }

        public void Dispose()
        {
        }
    }
}
